The invention relates generally to smart compact devices, and specifically to the display and manipulation of information on such devices by the use of a pen an input system capable of sensing the proximity of the an input object such as a finger or a pen.
There are now many computerized devices capable of storing and accessing large amounts of data that employ quite compact displays. Examples of such smart compact devices are smart handheld devices, such as PDAs and smartphones. Other smart compact devices may be kiosks or other equipment that is physically large, but with displays that are compact compared to those of traditional computers. These smart compact devices are commonly used for storing and accessing personal data such as contact addresses and calendar information. A smart compact device has an operating system running on a microprocessor, a display screen, and a pointing device configured to accept input from an activating object, such as a finger, pen, and the like. The pointing device is used to input to or to control the actions of the operating system through a user interface. The display screen is typically an LCD module, and the pointing device is, for example, a resistive touchscreen. The operating system is typically an event driven operating system with a graphical user interface, such as a windowing operating system, but may also be a text-based user interface.
A graphical user interface typically is made up from screen objects, which can be control objects, such as scroll bars, combo boxes, buttons and drop down lists; data objects, such as text windows and bitmapped images; and combinations of the two, such as hyperlinks within text. The user can store and retrieve information from the smart compact device by manipulating the screen objects of the graphical user interface with the pointing device. Control objects often have a control action associated with them, such as closing a window, or opening a file.
The graphical user interface on a smart compact device is often derived from graphical user interfaces that are well known on desktop computers, where the pointing device is often a mouse or a touchpad. A key difference between desktop computers and smart compact devices is that the display screen on a smart compact device is typically 320×240 pixels or less in size. This small size makes it difficult to present the data stored in the smart compact device in an easy to use way.
A second key difference is that the graphical user interface of a desktop computer is typically driven by a pointing device that is capable of generating both X and Y position data, and one or more bits of status information. An example of this status information is mouse button state. The pointing device on a smart compact device can usually only provide X and Y position data in one state, for example the position where the user has touched a resistive touchscreen.
Techniques that are used in the graphical user interfaces of desktop computers to manage large amounts of data on a display screen include multiple overlapping windows and pop-up data, which provides extra information about control and data objects in a graphical user interface when the mouse pointer is positioned over them. An example of an implementation of pop-up data is Microsoft's ToolTips.
Multiple overlapping windows are of little use on a smart compact device, since the overhead of window borders, title bars etc., become prohibitive on a small display screen. Pop-up data relies on the pointing device being able to provide at least two states with X and Y position data, so that a screen object may be pointed to trigger the pop-up data, and then selected. Existing pointing devices on smart compact devices do not have this capability, and so pop-up data is difficult to implement in a user-friendly manner.
Attempts have been made to implement pop-up data on smart compact devices using a pointing device that has only one X and Y position state. Microsoft's PocketPC generates pop-up data in some situations if the activating object of the pointing device is held on and touches a control object for a period of time. An alternative implementation is described in Patent Application EP 0 996 052 A2, where tapping on the pointing device switches modes to display pop-up data. Neither of these approaches is intuitive for the user, and so pop-up data implemented in this way detracts from the usability of the smart compact device.
A further challenge with the user interface of a smart compact device is that smart compact devices, unlike desktop computers, are generally used in a variety of environments, and often ease of use and quick access to data is of paramount importance. A standard measure of the usability of the user interface of a smart compact device is the number of taps or other discrete actions that a user must make to perform a specific task (e.g. dialing a phone number).
Pointing devices that are capable of generating X and Y position data while reporting several status bits are well known in desktop computers. In addition to the standard mouse, inductive graphics tablets are common. Also, inductive pen sensing systems have been used for pen-based tablet computers, which are characterized by a large form factor. The use of an inductive pen system in a small form factor device, such as a PDA, has also been disclosed in WO 00/33244. In all these cases the pen system is capable of generating X and Y position data with several status bits, where the status bits may depend on whether the pen is touched to the screen or not. The In the context of these prior art systems, the ability to report X and Y position while not touching the screen is sometimes referred to as proximity sensing.
In these prior art systems, the proximity information has only been used to mimic the status information available from mouse buttons. No inventive extensions to the User Interface of either desktop computers or smart compact devices have been made that use proximity information in a novel way to enhance usability. Specialized niche applications, such as varying spray density of the aerosol tool in a graphics package, are the extent of the applications to date.